package com.ruoyi.erecord.vehicles.domain.vo;

import java.util.Date;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.annotation.Translation;
import com.ruoyi.common.constant.TransConstant;
import com.ruoyi.common.convert.ExcelDeptConvert;
import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.tools.constant.ERecordTransConstant;
import com.ruoyi.common.tools.convert.ExcelEmployeeConvert;

import lombok.Data;



/**
 * 车辆视图对象 t_vehicles
 *
 * @author cc
 * @date 2023-04-17
 */
@Data
@ExcelIgnoreUnannotated
public class VehiclesVo {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private Long id;
    
    /**
     * 车辆编码
     */
    @ExcelProperty(value = "车辆编码")
    private String vehiclesCode;

    /**
     * 服务部门
     */
    @ExcelProperty(value = "服务部门" , converter = ExcelDeptConvert.class)
    private Long deptId;

    @Translation(type = TransConstant.DEPT_ID_TO_NAME , mapper = "deptId")
    private String deptName;

    /**
     * 服务类型
     */
    @ExcelProperty(value = "服务类型", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "erecord_service_type")
    private Integer serviceType;

    /**
     * 车辆设备名称
     */
    @ExcelProperty(value = "车辆设备名称")
    private String vehiclesName;

    /**
     * 车辆类型
     */
    @ExcelProperty(value = "车辆类型")
    private String vehiclesType;

    /**
     * 车牌号码
     */
    @ExcelProperty(value = "车牌号码")
    private String vehiclesNumber;

    /**
     * 品牌
     */
    @ExcelProperty(value = "品牌")
    private String brand;

    /**
     * 规格型号
     */
    @ExcelProperty(value = "规格型号")
    private String specificationMode;

    /**
     * 车辆注册日期
     */
    @ExcelProperty(value = "车辆注册日期")
    private Date registerDate;

    /**
     * 纯电动
     */
    @ExcelProperty(value = "纯电动", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "sys_yes_no")
    private String evFlag;

    /**
     * 总质量（KG）
     */
    @ExcelProperty(value = "总质量")
    private String totalWeight;

    /**
     * 是否加装GPS
     */
    @ExcelProperty(value = "是否加装GPS", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "sys_yes_no")
    private String gpsFlag;

    /**
     * 车辆行驶证编号
     */
    @ExcelProperty(value = "车辆行驶证编号")
    private String vehicleLicenseNo;

    /**
     * 驾驶员
     */
    @ExcelProperty(value = "驾驶员" , converter = ExcelEmployeeConvert.class)
    private Long employeeCode;

    @Translation(type = ERecordTransConstant.EMPLOYEE_ID_TO_NAME , mapper = "employeeCode")
    private String employeeName;
    
    /**
     * 手机号码
     */
    @ExcelProperty(value = "手机号码")
    private String phone;

    /**
     * 准驾车型
     */
    @ExcelProperty(value = "准驾车型", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "erecord_driving_vehicles_type")
    private String drivingVehiclesType;

    /**
     * 保险期限
     */
    @ExcelProperty(value = "保险期限")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private Date insureDate;

    /**
     * 驾驶证有效期
     */
    @ExcelProperty(value = "驾驶证有效期")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private Date drivingLicenseValidityDate;

    /**
     * 行驶证有效期
     */
    @ExcelProperty(value = "行驶证有效期")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private Date travelLicenseValidityDate;

    /**
     * 驾驶证照片
     */
   // @ExcelProperty(value = "驾驶证照片")
    private String drivingLicensePic;

    @Translation(type = TransConstant.OSS_ID_TO_URL , mapper = "drivingLicensePic")
    private String drivingLicensePicUrl;
    
    /**
     * 行驶证照片
     */
    //@ExcelProperty(value = "行驶证照片")
    private String travelLicensePic;

    @Translation(type = TransConstant.OSS_ID_TO_URL , mapper = "travelLicensePic")
    private String travelLicensePicUrl;
    /**
     * 正前面照片
     */
    //@ExcelProperty(value = "正前面照片")
    private String frontPic;

    @Translation(type = TransConstant.OSS_ID_TO_URL , mapper = "frontPic")
    private String frontPicUrl;
    /**
     * 正侧面照片
     */
    //@ExcelProperty(value = "正侧面照片")
    private String sidePic;

    @Translation(type = TransConstant.OSS_ID_TO_URL , mapper = "sidePic")
    private String sidePicUrl;
    
    /**
     * 正后面照片
     */
    //@ExcelProperty(value = "正后面照片")
    private String behindPic;

    @Translation(type = TransConstant.OSS_ID_TO_URL , mapper = "behindPic")
    private String behindPicUrl;
    
    /**
     * 备注
     */
    //@ExcelProperty(value = "备注")
    private String remark;

    /**
     * 创建日期
     */
    //@ExcelProperty(value = "创建日期")
    private Date createTime;

    /**
     * 创建人
     */
    //@ExcelProperty(value = "创建人")
    private String createBy;

    /**
     * 更新日期
     */
    //@ExcelProperty(value = "更新日期")
    private Date updateTime;

    /**
     * 更新人
     */
    //@ExcelProperty(value = "更新人")
    private String updateBy;


}
